package ar.view.adapter;

import java.util.HashMap;

import android.content.Context;
import android.graphics.Color;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import ar.Location.Localization.LocalizationHelper;
import ar.activity.R;
import ar.globals.Globals;

public class ShareAdapter extends BaseAdapter {

	private int num = 7;
	private Context context;
	private HashMap<View, Boolean> items;

	public ShareAdapter(Context context) {
		super();
		this.context = context;
		this.items = new HashMap<View, Boolean>();
	}

	@Override
	public int getCount() {
		return num;
	}

	@Override
	public Object getItem(int arg0) {
		return null;
	}

	@Override
	public long getItemId(int arg0) {
		return 0;
	}

	@Override
	public View getView(int position, View v, ViewGroup parent) {
		LayoutInflater inflater = (LayoutInflater) this.context
				.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
		View rowView = inflater.inflate(R.layout.share_item, parent, false);
		TextView tvMain = (TextView) rowView.findViewById(R.id.tvShareMain);
		TextView tvSub = (TextView) rowView.findViewById(R.id.tvShareSub);
		tvMain.setPadding(0, 10, 0, 0);
		tvSub.setPadding(0, 10, 0, 15);

		switch (position) {
		case 0:			
			if(LocalizationHelper.isEnglish) {
				tvMain.setText("1. Connect");
				tvSub.setText("Connect your phone to the AR server");
			} else {
				tvMain.setText("1. Kết nối server");
				tvSub.setText("Kết nối đến AR server");
			}
			if (!Globals.isEnable1)
				disableViews(tvMain, tvSub, rowView);
			break;
		case 1:
			if(LocalizationHelper.isEnglish) {
				tvMain.setText("2. Share");
				tvSub.setText("Share your current location with your friends");
			} else {
				tvMain.setText("2. Chia sẻ");
				tvSub.setText("Chia sẻ vị trí hiện tại của bạn với mọi người");
			}
			if (!Globals.isEnable2)
				disableViews(tvMain, tvSub, rowView);
			break;		
		case 2:
			if(LocalizationHelper.isEnglish) {
				tvMain.setText("3. Track");
				tvSub.setText("Get list all of your friends who is sharing their locations with you, choose one for tracking");
			} else {
				tvMain.setText("3. Theo vết địa điểm");
				tvSub.setText("Chọn người bạn cần theo vết");
			}
			if (!Globals.isEnable3)
				disableViews(tvMain, tvSub, rowView);
			break;		
		case 3:
			if(LocalizationHelper.isEnglish) {
				tvMain.setText("3.1 Open Map");
				tvSub.setText("View your friend location on the Google map");
			} else {
				tvMain.setText("3.1 Hiển thị trên bản đồ");
				tvSub.setText("Xem vị trí được chia sẻ trên bản đồ");
			}
			if (!Globals.isEnable31_32)
				disableViews(tvMain, tvSub, rowView);
			break;
		case 4:
			if(LocalizationHelper.isEnglish) {
				tvMain.setText("3.2 Open camera");
				tvSub.setText("View your friend location on the camera");
			} else {
				tvMain.setText("3.2 Hiển thị trên camera");
				tvSub.setText("Xem vị trí được chia sẻ trên camera");
			}
			if (!Globals.isEnable31_32)
				disableViews(tvMain, tvSub, rowView);
			break;
		case 5:
			if(LocalizationHelper.isEnglish) {
				tvMain.setText("4. Disconnect");
				tvSub.setText("Disconnect your phone to the AR server");
			} else {
				tvMain.setText("4. Ngắt kết nối");
				tvSub.setText("Ngắt kết nối đến AR server");
			}
			if (!Globals.isEnable4)
				disableViews(tvMain, tvSub, rowView);
			break;
		case 6:
			if(LocalizationHelper.isEnglish) {
				tvMain.setText("5. Load a saved route");
				tvSub.setText("Load a your friend route from database and view it on map");
			} else {
				tvMain.setText("5. Xem lộ trình đã lưu");
				tvSub.setText("Tải lộ trình đã lưu từ cơ sở dữ liệu và xem trên bản đồ");
			}
			if (!Globals.isEnable1)
				disableViews(tvMain, tvSub, rowView);
			break;
		default:
			break;
		}
		items.put(rowView, true);
		return rowView;
	}

	public void disableViews(TextView v1, TextView v2, View v3) {
		v1.setTextColor(Color.GRAY);
		v2.setTextColor(Color.GRAY);
	}
}
